home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
doors_2
/
urd101.zip
/
URD.DOC
< prev
next >
Wrap
Text File
|
1993-04-02
|
27KB
|
619 lines
User Registration Door 1.01
For
RemoteAccess 1.11 and 2.00
Copyright 1992-93, Marco A.J. Miltenburg
Public Software
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ WHAT IS IT ? │
└──────────────────────────────────────────────────────────────────────┘
User Registration Door (or URD) is a RemoteAccess 1.11/2.00 door.
It has been designed to make it very easy for new users at your
bulletin board to answer some questions before you grant them
access. URD is fully configurable and makes it possible to create a
questionnaire which is completly simular to your BBS. URD has no
limitation to the number of questions. All questions can be in the
language the user has chosen (up to 99 languages are supported).
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ DISCLAIMER │
└──────────────────────────────────────────────────────────────────────┘
In no event shall Public Software nor Marco Miltenburg be liable to
you or anyone else for any special, incidental, consequential,
indirect or similar damages due to the use of this program even if
one of our support-sites has advised you to use the program in a
special way. The program is provided as it is, and you use it on
your own risk. All brands and product names in this documentation
are trademarks or registered trademarks of their respective
holders.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ INSTALLATION │
└──────────────────────────────────────────────────────────────────────┘
Installation of User Registration Door is very easy. Just copy
URD.EXE and URD.CTL to some directory of your harddisk. Be sure
that you have set the environment variable RA as explained in the
RemoteAccess manual. URD makes use of this variable to find the
RemoteAccess systemfiles. URD.CTL is the controlfile used by URD.
You probably need to edit it to fit your own needs. All command's
are explained later in this document.
After editing the configurationfile, you will have to create one or
more questionfiles which defines the questions the users have to
answer. An example questionfile is included. All commands will be
explained later in this document and are also commented in the
example questionfile.
Installation of the door in RemoteAccess is easy. It doesn't
require any commandline option, however it accepts an optional
commandline option. Just simply make a menuoption 7 in your menu
and put the following in the optional data field :
Menutype : 7
Optional Data : USERREG.EXE [<filename>] *M
Swapping is recomended, because URD allocates dynamic memory. By
default URD will open URD.CTL and URD.Qxx (see below). If you want
to use other config- and questionnaire files, supply the name as
showed above, but DON'T! include an extension. URD will add the
extension of the file by itself. URD will also REQUIRE! that the
user has selected ANSI or Avatar Emulation. ASCII is not (yet?)
supported.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ CONFIGURATION FILE │
└──────────────────────────────────────────────────────────────────────┘
You control URD with it's configurationfile URD.CTL (or any other
filename supplied on the commandline). This file contains commands
which are read by URD at startup. You can/must use the following
commands :
REGISTRATIONKEY
─────────────────────────────────────────────────────────────────
Here you enter the registrationkey you have received uppon
registering the program. If you are evaluating the program in the
trialperiode, comment this line by putting a ; in front of the
line. The format of this line is :
REGISTRATIONKEY = 1234567890
ANSWERFILEPATH
─────────────────────────────────────────────────────────────────
With this option you define where URD will write the file
NEWUSER.ASW with the answers of the users. This keyword is
optional. It will default to the RA system directory. Example :
ANSWERFILEPATH = C:\RA\URD\
The next part defines how URD will update the user's level or flags
when it has, or hasn't completed the questionnaire. Therefore, you
define two section named ANSWERED and NOTANSWERED. The sections are
ended with an END keyword. For both sections you can use the same
keywords which are explained now.
AFLAGS
─────────────────────────────────────────────────────────────────
This command sets or resets the A-Flags of the user. The flags
are numbered from 1 to 8 in this order :
12345678
AFLAGS = --1-0--1
If you want to set a flag use a '1' on that place. A '0' resets
the flag and a '-' doesn't affect that flag.
BFLAGS
─────────────────────────────────────────────────────────────────
See AFLAGS
CFLAGS
─────────────────────────────────────────────────────────────────
See AFLAGS
DFLAGS
─────────────────────────────────────────────────────────────────
See AFLAGS
UPDATELEVEL
─────────────────────────────────────────────────────────────────
With this command you can update the level of the user and/or
time he/she has left on the BBS after completing the
questionnaire. You can use as many of these lines you want.
There's is no limitation (only your memory). The general format
of this command is :
UPDATELEVEL = <old level>,<new level>,<timeleft>
<old level> is the level of the user when he/she started the
door. If a user has this level, it will be updated to <new
level>. The time the user has left on the BBS will be updated to
<timeleft> (in minutes).
If you only want to update the securitylevel of the user and not
the time he/she has left on the BBS, use a 0 (zero) for
<timeleft>. For example :
UPDATELEVEL = 10,50,0
If you don't want to update the securitylevel, but only the time
the user has left, use 0 (zero) for <new level>. For example :
UPDATELEVEL = 10,0,15
If you don't want to update anything, simply comment or delete
the lines.
HANGUP
─────────────────────────────────────────────────────────────────
This keyword allows you to terminate a call when a user didn't
want to complete your questionnaire. Of course this can only be
used in the NOTANSWERED section.
DELETE
─────────────────────────────────────────────────────────────────
This keyword will delete the user from your userbase. It will set
the delete flag so that the next time you run RAUSER -P the user
will be deleted. If this keyword is used, all other keyword don't
matter anymore, because the user is deleted anyway. However, URD
will update the user record as you specified, before deleting the
user. Of course this can only be used in the NOTANSWERED section.
LOCKOUT
─────────────────────────────────────────────────────────────────
This keyword will lockout the user from your system if it doesn't
want to answer you questionnaire. It will lower the securitylevel
to zero and terminate the call (an extra HANGUP keyword is not
needed). Of course this can only be used in the NOTANSWERED
section.
An example of a complete section :
NOTANSWERED
AFLAGS = 0-------
BFLAGS = 00100011
CFLAGS = --------
DFLAGS = -------1
UPDATELEVEL = 10,5,10
END
If you want, you can leave out the redundant entry's like :
CFLAGS = -------
URD won't change the flags by default. Look at the example CTL
files which are in the distribution archive for more examples.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ QUESTIONNAIRE FILES │
└──────────────────────────────────────────────────────────────────────┘
The questionfile defines the questions which has to be answered by
the user. It also contains some keywords that are language
dependent. Because this is the place to make URD multi-langual.
The questionfiles have to be named URD.Qxx (or any other filename
supplied on the commandline), where xx stands for the language
number. If for example a user is using language 3 on your system,
URD will open the questionfile URD.Q03. If it can't open that file
it will default to language 1 and will try to open URD.Q01. If this
isn't succesfull either, it will abort with an errormessage and
return to the BBS (or calling program). The questionfiles have to
be in the same directory as where URD.EXE is located.
First of all the keywords that are not related to the questions.
STARTSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ANSI or Avatar file that
will be displayed before URD will aks the user if he/she wants to
answer the questionnaire. DON'T include an extension. URD will by
itself determine what file to use. Example:
STARTSCREEN = URD_STRT
BACKSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ANSI or Avatar file that
will be displayed as a background screen under your
questionnaire. DON'T include an extension. Example :
BACKSCREEN = URD_BACK
ENDSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ANSI or Avatar file that
will be displayed after the user has completed the questionnaire.
DON'T include an extension. Example :
ENDSCREEN = URD_END
NOTANSWEREDSCREEN
─────────────────────────────────────────────────────────────────
This keyword defines the name of the ANSI or Avatar file that
will be displayed if a user doesn't want to answer the
questionnaire. DON'T include an extension. Example :
NOTANSWEREDSCREEN = URD_NOT
SAVEANSWERTEXT
─────────────────────────────────────────────────────────────────
This string will be showed to the user when his answers are
saved. It will be centered in the middle of the screen on the
bottom line. Default color is 15 (bright white). Example :
SAVEANSWERTEXT = Saving your answers. Please hold....
MUSTANSWERTEXT
─────────────────────────────────────────────────────────────────
This string will be displayed when the user hasn't answered all
questions you wanted him/her to answer as defined with the
'MustAnswer = Yes' keyword in the question section (see below).
Default color is 12 (bright red).
MUSTANSWERTEXT = You MUST answer the first 6 questions !
URD will search for the ANSI or Avatar files in this order :
- Language Textfiles Directory
- URD Directory
- Current Directory
- Textfiles Directory as defined in RACONFIG (not the language)
ANSI and Avatar files may contain RA alike codes to insert user- or
systemparameters. If you want multi-langual support, you have to
place the ANSI and/or Avatar files in the Language Textfiles
Directory.
Before starting the questionnaire URD has the option to ask the
user if he/she wants to answer your questionnaire. This question
will be prompted after STARTSCREEN has been displayed. If the user
doesn't want to answer your questionnaire, URD will update the user
as defined in the NOTANSWERED section in the CTL file and display
the NOTANSWEREDSCREEN. The question is defined by the STARTQUESTION
keyword and ended by an END keyword. Example :
STARTQUESTION
X = 6
Y = 20
QUESTION = `A112:Do you want to answer the questions
END
If you want your users always to answer the questionnaire, simply
delete (or comment) the lines in the questionfile. URD will only
display STARTSCREEN then and start the questionnaire directly.
Remember to put a ^A (wait for ENTER) in your STARTSCREEN.
Follows an explanation of the keywords.
STARTQUESTION
─────────────────────────────────────────────────────────────────
Defines the start of the section that defines the question that
will be prompted to the user if he/she wants to answer your
questionnaire.
X
─────────────────────────────────────────────────────────────────
The colum where the first character of the question has to be
placed.
Y
─────────────────────────────────────────────────────────────────
The row where the first character of the question has to be
placed.
QUESTION
─────────────────────────────────────────────────────────────────
This keyword defines the question which will be asked to the
user. You don't have to include an [Y/N], because URD will add
that automatically (language depently).
END
─────────────────────────────────────────────────────────────────
Defines the end of the STARTQUESTION section.
Now we are at the tough part of URD : the definition of the
questions. One question contains more keywords like the
STARTQUESTION. These keywords define several things about the
question. A question is started with an BEGIN keyword and ended
with an END keyword. Everything between it, affects that question.
You can also use some keywords outside a BEGIN-END section. These
keywords will affect all question which are defined BELOW it. These
keywords are named GLOBAL keywords. Here's an exmplanation of the
keywords :
BEGIN
─────────────────────────────────────────────────────────────────
Defines the start of a question.
X
─────────────────────────────────────────────────────────────────
The colum where the first character of the question has to be
placed.
Y
─────────────────────────────────────────────────────────────────
The row where the first character of the question has to be
placed.
VALIDCHAR
─────────────────────────────────────────────────────────────────
Defines what letters or digits may be entered by the user. For
example if you ask for a phonenumber, you can disallow letters to
be entered. There are several groups defined :
0 = All printable characters
1 = Characters and digits
2 = Characters only
3 = Digits only
4 = Digits and '+', '-' (useful for phonenumbers)
5 = Digits and '-', '/' (useful for date of birth)
6 = First four places digits only. Useful for postal codes or
zipcodes. (Check not implemented yet !).
If you want to ask the user for his/her date of birth, you could
define :
VALIDCHAR = 5
PREANSWER
─────────────────────────────────────────────────────────────────
To make it more easy for the user to answer the questions, URD
will allow you to fill in some answers already. The groups
defined for this are :
0 = Nothing
1 = Name
2 = Location
3 = Dataphone
4 = Voicephone
5 = Handle
6 = Birthdate
7 = Comm. Program used by the user (IEMSI only)
If you ask a user to enter his/her voicenumber, you can use :
PREANSWER = 4
A user only have to press ENTER to confirm the number, although
URD will still allow a user to edit the supplied number.
MUSTANSWER
─────────────────────────────────────────────────────────────────
Defines if the user MUST answer this question or not. For example
I want my users at least to enter there address. Other questions
aren't that important to me. If they end the questionnaire
without answering one or more question with this statement, URD
will display the MUSTANSWER string (defined earlier) and will put
the prompt on the first question that has to be answered.
Example :
MUSTANSWER = YES
ANSWERCOLOR
─────────────────────────────────────────────────────────────────
Defines in which the color the answers of the user will be
displayed (see the COLORS section at the end of this document for
more information). Don't include the special colorcode here. Only
a numeric value. Example :
ANSWERCOLOR = 15
EDITFIELDCOLOR
─────────────────────────────────────────────────────────────────
Defines the color of the input prompt when the user enters
his/her answer. (see the COLORS section at the end of this
document for more information). Don't include the special
colorcode here. Only a numeric value. Example :
EDITFIELDCOLOR = 31
ANSWERLENGTH
─────────────────────────────────────────────────────────────────
Defines the length of the answerfield. Example :
ANSWERLENGTH = 30
QUESTION
─────────────────────────────────────────────────────────────────
Defines the question which will be asked to the user. Example :
QUESTION = What is you date of birth :
END
─────────────────────────────────────────────────────────────────
Defines the end of the question.
To make it a little bit easier for you to create the questionfile
and to let URD read the questionfiles a little bit faster, there
are a few keywords that can be used globally. These keywords are :
MUSTANSWER
ANSWERCOLOR
EDITFIELDCOLOR
Mostly these keywords will be assigned the same value for more than
one question.
This is an example of a question :
BEGIN
X = 4
Y = 9
VALICHAR = 4
PREANSWER = 4
MUSTANSWER = YES
ANSWERCOLOR = 15
EDITFIELDCOLOR = 31
ANSWERLENGTH = 12
QUESTION = Voice Phone :
END
Look at the example questionfiles for more examples.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ COLORS │
└──────────────────────────────────────────────────────────────────────┘
URD allows you to completly change the look of the program. This of
course means that you can change the colors it it using. Because
URD is written using RADU, you can use the special RADU color
codes. The general format of the colorcode is :
`A<Parameters>:
<Parameters> numeric value
For example `A15: will change the color to bright white. The code
`A120: will change the color to black with a white background. The
numeric value can be calculated using the following formula :
Color = Foreground + Background * 16
┌─────────────────────┐ ┌─────────────────────┐
│ Foreground Colors │ │ Background Colors │
├───────────────┬─────┤ ├───────────────┬─────┤
│ Black │ 0 │ │ Black │ 0 │
│ Blue │ 1 │ │ Blue │ 1 │
│ Green │ 2 │ │ Green │ 2 │
│ Cyan │ 3 │ │ Cyan │ 3 │
│ Red │ 4 │ │ Red │ 4 │
│ Magenta │ 5 │ │ Magenta │ 5 │
│ Brown │ 6 │ │ Brown │ 6 │
│ Gray │ 7 │ │ Gray │ 7 │
│ - - - - - - - │ - - │ │ - - - - - - - │ - - │
│ DarkGray │ 8 │ │ Black │ 8 │
│ LightBlue │ 9 │ │ Blue │ 9 │
│ LightGreen │ 10 │ │ Green │ 10 │
│ LightCyan │ 11 │ │ Cyan │ 11 │
│ LightRed │ 12 │ │ Red │ 12 │
│ LightMagenta │ 13 │ │ Magenta │ 13 │
│ Yellow │ 14 │ │ Brown │ 14 │
│ White │ 15 │ │ Gray │ 15 │
└───────────────┴─────┘ └───────────────┴─────┘
If you use a background color between 8 and 15, the foreground will
blink. Please think about the users that are using a monochrome
screen. Some colors may look very nasty on these screens (for
example: Blue will be underlined on monochrome systems). These
special colorcodes can only be used in prompts (questions and
userprompts). If you have to enter a numeric value (for example
with EDITFIELDCOLOR in the questionfile) you can use the same
formula to calculate the color, but you may not include the special
`A code.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ REGISTRATION │
└──────────────────────────────────────────────────────────────────────┘
You are allowed to evaluate the program for period of 30 days.
After this periode you MUST register or stop continue using the
program. Registration isn't to make me rich, because I will never
become rich even if you register ;-). It's just to cover some cost
I make for making this programm. It won't give you any extra
features (yet) either. This shareware version isn't cripled in any
way. In future version there will be features added that will only
be available for registered users. To register, please fill in the
form URD.REG suplied in the distribution archive and send it with a
file-attach to one of the adresses listed below or upload it
(PRIVATE!!!) to my bulletin board.
Support & Registration
──────────────────────
System..: Public Board Driebergen, The Netherlands
Sysop...: Marco Miltenburg
Phone...: +31-3438-14125 - 24 Hrs a day
Speeds..: V21-V32bis, HST-16k8.
Running an USRobotics Courier HST Dual Standard
Netmail.: Fido : 2:512/169
VirNet : 9:318/4
PNN : 13:310/303
SIGnet : 27:2331/1
UNIversal Net : 77:8400/0
RA FileNet : 95:200/111
Thank you for using the program. Any suggestions and/or tips are
welcome of course. You can send them to the same addresses listed
above.
┌──────────────────────────────────────────────────────────────────────┐
│▐▐▐▐ CREDITS │
└──────────────────────────────────────────────────────────────────────┘
I would like to thank all the guys and girls who join the
international PASCAL echomail area for there interesting
discussions. I learned (and still do) a lot from all this.
Of course I may not forget Andrew Milner for writting an excellent
BBS package like RemoteAccess. Without RA, this door would be
useless.
Also thanks to (in no particular order) : Jos Bergman, Ruben Bonke,
Pascal van Rossum, Berry Cozijnsen, Bruce Bodger (RA Support USA),
Hans Siemons and all people who have contacted me with valuable
tips, bug-reports and suggestions.
User Registration Door is written using Borland Turbo Pascal 6.0
and RemoteAccess Door Unit (RADU) 2.00 and 3.00 4.
All brands and product names named in this documentation are
trademarks or registered trademarks of there respective holders.
RemoteAccess by Andrew Milner, Continental Software.
Turbo Pascal by Borland International Inc.
RADU by Hans Siemons, Prime Productions.
<EOF>